package com.ctshk.rpc.cms.service;

import com.ctshk.common.dto.Result;
import com.ctshk.common.model.PageResponse;
import com.ctshk.common.model.TokenUser;
import com.ctshk.rpc.cms.dto.BannerDTO;
import com.ctshk.rpc.cms.req.*;

import java.util.List;

/**
 * <p>
 * banner图管理 服务类
 * </p>
 *
 * @author LiZhiming
 * @since 2021-04-23
 */
public interface IBannerService{

    /**
     * 新增banner
     *
     * @param req
     * @return
     */
    Result insert(BannerAddReq req, TokenUser tu);

    /**
     * 查询banner
     * @param bannerId
     * @return
     */
    Result<BannerDTO> queryById(String bannerId);

    /**
     * banner分页查询
     * @param req
     * @return
     */
    PageResponse<BannerDTO> queryList(BannerQueryReq req);

    /**
     * banners查询
     * @param req
     * @return
     */
    List<BannerDTO> queryListByCode(BannerPositionByTypeReq req);

    /**
     * 修改banner
     * @param req
     * @return
     */
    Result update(BannerUpdateReq req,TokenUser tu);

    /**
     * 修改有效状态
     * @param req
     * @return
     */
    Result updateStatusById(UpdateStatusReq req);
}
